package com.cetus.jengine.orm.ext.liferay.testportlet.service.base;

import com.cetus.jengine.orm.ext.liferay.testportlet.service.SAuthorLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SAuthorService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SBookLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SBookService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SLibraryLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SLibraryService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SMemberLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.SMemberService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.STransactionLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.STransactionService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.TestLocalService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.TestService;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.persistence.SAuthorPersistence;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.persistence.SBookPersistence;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.persistence.SLibraryPersistence;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.persistence.SMemberPersistence;
import com.cetus.jengine.orm.ext.liferay.testportlet.service.persistence.STransactionPersistence;

import com.liferay.counter.service.CounterLocalService;

import com.liferay.portal.kernel.bean.BeanReference;
import com.liferay.portal.kernel.bean.IdentifiableBean;
import com.liferay.portal.kernel.dao.jdbc.SqlUpdate;
import com.liferay.portal.kernel.dao.jdbc.SqlUpdateFactoryUtil;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.kernel.util.InfrastructureUtil;
import com.liferay.portal.service.BaseServiceImpl;
import com.liferay.portal.service.ResourceLocalService;
import com.liferay.portal.service.ResourceService;
import com.liferay.portal.service.UserLocalService;
import com.liferay.portal.service.UserService;
import com.liferay.portal.service.persistence.ResourcePersistence;
import com.liferay.portal.service.persistence.UserPersistence;

import javax.sql.DataSource;

/**
 * The base implementation of the test remote service.
 *
 * <p>
 * This implementation exists only as a container for the default service methods generated by ServiceBuilder. All custom service methods should be put in {@link com.cetus.jengine.orm.ext.liferay.testportlet.service.impl.TestServiceImpl}.
 * </p>
 *
 * @author Brian Wing Shun Chan
 * @see com.cetus.jengine.orm.ext.liferay.testportlet.service.impl.TestServiceImpl
 * @see com.cetus.jengine.orm.ext.liferay.testportlet.service.TestServiceUtil
 * @generated
 */
public abstract class TestServiceBaseImpl extends BaseServiceImpl
    implements TestService, IdentifiableBean {
    @BeanReference(type = SAuthorLocalService.class)
    protected SAuthorLocalService sAuthorLocalService;
    @BeanReference(type = SAuthorService.class)
    protected SAuthorService sAuthorService;
    @BeanReference(type = SAuthorPersistence.class)
    protected SAuthorPersistence sAuthorPersistence;
    @BeanReference(type = SBookLocalService.class)
    protected SBookLocalService sBookLocalService;
    @BeanReference(type = SBookService.class)
    protected SBookService sBookService;
    @BeanReference(type = SBookPersistence.class)
    protected SBookPersistence sBookPersistence;
    @BeanReference(type = SLibraryLocalService.class)
    protected SLibraryLocalService sLibraryLocalService;
    @BeanReference(type = SLibraryService.class)
    protected SLibraryService sLibraryService;
    @BeanReference(type = SLibraryPersistence.class)
    protected SLibraryPersistence sLibraryPersistence;
    @BeanReference(type = SMemberLocalService.class)
    protected SMemberLocalService sMemberLocalService;
    @BeanReference(type = SMemberService.class)
    protected SMemberService sMemberService;
    @BeanReference(type = SMemberPersistence.class)
    protected SMemberPersistence sMemberPersistence;
    @BeanReference(type = STransactionLocalService.class)
    protected STransactionLocalService sTransactionLocalService;
    @BeanReference(type = STransactionService.class)
    protected STransactionService sTransactionService;
    @BeanReference(type = STransactionPersistence.class)
    protected STransactionPersistence sTransactionPersistence;
    @BeanReference(type = TestLocalService.class)
    protected TestLocalService testLocalService;
    @BeanReference(type = TestService.class)
    protected TestService testService;
    @BeanReference(type = CounterLocalService.class)
    protected CounterLocalService counterLocalService;
    @BeanReference(type = ResourceLocalService.class)
    protected ResourceLocalService resourceLocalService;
    @BeanReference(type = ResourceService.class)
    protected ResourceService resourceService;
    @BeanReference(type = ResourcePersistence.class)
    protected ResourcePersistence resourcePersistence;
    @BeanReference(type = UserLocalService.class)
    protected UserLocalService userLocalService;
    @BeanReference(type = UserService.class)
    protected UserService userService;
    @BeanReference(type = UserPersistence.class)
    protected UserPersistence userPersistence;
    private String _beanIdentifier;
    private TestServiceClpInvoker _clpInvoker = new TestServiceClpInvoker();

    /*
     * NOTE FOR DEVELOPERS:
     *
     * Never modify or reference this class directly. Always use {@link com.cetus.jengine.orm.ext.liferay.testportlet.service.TestServiceUtil} to access the test remote service.
     */

    /**
     * Returns the s author local service.
     *
     * @return the s author local service
     */
    public SAuthorLocalService getSAuthorLocalService() {
        return sAuthorLocalService;
    }

    /**
     * Sets the s author local service.
     *
     * @param sAuthorLocalService the s author local service
     */
    public void setSAuthorLocalService(SAuthorLocalService sAuthorLocalService) {
        this.sAuthorLocalService = sAuthorLocalService;
    }

    /**
     * Returns the s author remote service.
     *
     * @return the s author remote service
     */
    public SAuthorService getSAuthorService() {
        return sAuthorService;
    }

    /**
     * Sets the s author remote service.
     *
     * @param sAuthorService the s author remote service
     */
    public void setSAuthorService(SAuthorService sAuthorService) {
        this.sAuthorService = sAuthorService;
    }

    /**
     * Returns the s author persistence.
     *
     * @return the s author persistence
     */
    public SAuthorPersistence getSAuthorPersistence() {
        return sAuthorPersistence;
    }

    /**
     * Sets the s author persistence.
     *
     * @param sAuthorPersistence the s author persistence
     */
    public void setSAuthorPersistence(SAuthorPersistence sAuthorPersistence) {
        this.sAuthorPersistence = sAuthorPersistence;
    }

    /**
     * Returns the s book local service.
     *
     * @return the s book local service
     */
    public SBookLocalService getSBookLocalService() {
        return sBookLocalService;
    }

    /**
     * Sets the s book local service.
     *
     * @param sBookLocalService the s book local service
     */
    public void setSBookLocalService(SBookLocalService sBookLocalService) {
        this.sBookLocalService = sBookLocalService;
    }

    /**
     * Returns the s book remote service.
     *
     * @return the s book remote service
     */
    public SBookService getSBookService() {
        return sBookService;
    }

    /**
     * Sets the s book remote service.
     *
     * @param sBookService the s book remote service
     */
    public void setSBookService(SBookService sBookService) {
        this.sBookService = sBookService;
    }

    /**
     * Returns the s book persistence.
     *
     * @return the s book persistence
     */
    public SBookPersistence getSBookPersistence() {
        return sBookPersistence;
    }

    /**
     * Sets the s book persistence.
     *
     * @param sBookPersistence the s book persistence
     */
    public void setSBookPersistence(SBookPersistence sBookPersistence) {
        this.sBookPersistence = sBookPersistence;
    }

    /**
     * Returns the s library local service.
     *
     * @return the s library local service
     */
    public SLibraryLocalService getSLibraryLocalService() {
        return sLibraryLocalService;
    }

    /**
     * Sets the s library local service.
     *
     * @param sLibraryLocalService the s library local service
     */
    public void setSLibraryLocalService(
        SLibraryLocalService sLibraryLocalService) {
        this.sLibraryLocalService = sLibraryLocalService;
    }

    /**
     * Returns the s library remote service.
     *
     * @return the s library remote service
     */
    public SLibraryService getSLibraryService() {
        return sLibraryService;
    }

    /**
     * Sets the s library remote service.
     *
     * @param sLibraryService the s library remote service
     */
    public void setSLibraryService(SLibraryService sLibraryService) {
        this.sLibraryService = sLibraryService;
    }

    /**
     * Returns the s library persistence.
     *
     * @return the s library persistence
     */
    public SLibraryPersistence getSLibraryPersistence() {
        return sLibraryPersistence;
    }

    /**
     * Sets the s library persistence.
     *
     * @param sLibraryPersistence the s library persistence
     */
    public void setSLibraryPersistence(SLibraryPersistence sLibraryPersistence) {
        this.sLibraryPersistence = sLibraryPersistence;
    }

    /**
     * Returns the s member local service.
     *
     * @return the s member local service
     */
    public SMemberLocalService getSMemberLocalService() {
        return sMemberLocalService;
    }

    /**
     * Sets the s member local service.
     *
     * @param sMemberLocalService the s member local service
     */
    public void setSMemberLocalService(SMemberLocalService sMemberLocalService) {
        this.sMemberLocalService = sMemberLocalService;
    }

    /**
     * Returns the s member remote service.
     *
     * @return the s member remote service
     */
    public SMemberService getSMemberService() {
        return sMemberService;
    }

    /**
     * Sets the s member remote service.
     *
     * @param sMemberService the s member remote service
     */
    public void setSMemberService(SMemberService sMemberService) {
        this.sMemberService = sMemberService;
    }

    /**
     * Returns the s member persistence.
     *
     * @return the s member persistence
     */
    public SMemberPersistence getSMemberPersistence() {
        return sMemberPersistence;
    }

    /**
     * Sets the s member persistence.
     *
     * @param sMemberPersistence the s member persistence
     */
    public void setSMemberPersistence(SMemberPersistence sMemberPersistence) {
        this.sMemberPersistence = sMemberPersistence;
    }

    /**
     * Returns the s transaction local service.
     *
     * @return the s transaction local service
     */
    public STransactionLocalService getSTransactionLocalService() {
        return sTransactionLocalService;
    }

    /**
     * Sets the s transaction local service.
     *
     * @param sTransactionLocalService the s transaction local service
     */
    public void setSTransactionLocalService(
        STransactionLocalService sTransactionLocalService) {
        this.sTransactionLocalService = sTransactionLocalService;
    }

    /**
     * Returns the s transaction remote service.
     *
     * @return the s transaction remote service
     */
    public STransactionService getSTransactionService() {
        return sTransactionService;
    }

    /**
     * Sets the s transaction remote service.
     *
     * @param sTransactionService the s transaction remote service
     */
    public void setSTransactionService(STransactionService sTransactionService) {
        this.sTransactionService = sTransactionService;
    }

    /**
     * Returns the s transaction persistence.
     *
     * @return the s transaction persistence
     */
    public STransactionPersistence getSTransactionPersistence() {
        return sTransactionPersistence;
    }

    /**
     * Sets the s transaction persistence.
     *
     * @param sTransactionPersistence the s transaction persistence
     */
    public void setSTransactionPersistence(
        STransactionPersistence sTransactionPersistence) {
        this.sTransactionPersistence = sTransactionPersistence;
    }

    /**
     * Returns the test local service.
     *
     * @return the test local service
     */
    public TestLocalService getTestLocalService() {
        return testLocalService;
    }

    /**
     * Sets the test local service.
     *
     * @param testLocalService the test local service
     */
    public void setTestLocalService(TestLocalService testLocalService) {
        this.testLocalService = testLocalService;
    }

    /**
     * Returns the test remote service.
     *
     * @return the test remote service
     */
    public TestService getTestService() {
        return testService;
    }

    /**
     * Sets the test remote service.
     *
     * @param testService the test remote service
     */
    public void setTestService(TestService testService) {
        this.testService = testService;
    }

    /**
     * Returns the counter local service.
     *
     * @return the counter local service
     */
    public CounterLocalService getCounterLocalService() {
        return counterLocalService;
    }

    /**
     * Sets the counter local service.
     *
     * @param counterLocalService the counter local service
     */
    public void setCounterLocalService(CounterLocalService counterLocalService) {
        this.counterLocalService = counterLocalService;
    }

    /**
     * Returns the resource local service.
     *
     * @return the resource local service
     */
    public ResourceLocalService getResourceLocalService() {
        return resourceLocalService;
    }

    /**
     * Sets the resource local service.
     *
     * @param resourceLocalService the resource local service
     */
    public void setResourceLocalService(
        ResourceLocalService resourceLocalService) {
        this.resourceLocalService = resourceLocalService;
    }

    /**
     * Returns the resource remote service.
     *
     * @return the resource remote service
     */
    public ResourceService getResourceService() {
        return resourceService;
    }

    /**
     * Sets the resource remote service.
     *
     * @param resourceService the resource remote service
     */
    public void setResourceService(ResourceService resourceService) {
        this.resourceService = resourceService;
    }

    /**
     * Returns the resource persistence.
     *
     * @return the resource persistence
     */
    public ResourcePersistence getResourcePersistence() {
        return resourcePersistence;
    }

    /**
     * Sets the resource persistence.
     *
     * @param resourcePersistence the resource persistence
     */
    public void setResourcePersistence(ResourcePersistence resourcePersistence) {
        this.resourcePersistence = resourcePersistence;
    }

    /**
     * Returns the user local service.
     *
     * @return the user local service
     */
    public UserLocalService getUserLocalService() {
        return userLocalService;
    }

    /**
     * Sets the user local service.
     *
     * @param userLocalService the user local service
     */
    public void setUserLocalService(UserLocalService userLocalService) {
        this.userLocalService = userLocalService;
    }

    /**
     * Returns the user remote service.
     *
     * @return the user remote service
     */
    public UserService getUserService() {
        return userService;
    }

    /**
     * Sets the user remote service.
     *
     * @param userService the user remote service
     */
    public void setUserService(UserService userService) {
        this.userService = userService;
    }

    /**
     * Returns the user persistence.
     *
     * @return the user persistence
     */
    public UserPersistence getUserPersistence() {
        return userPersistence;
    }

    /**
     * Sets the user persistence.
     *
     * @param userPersistence the user persistence
     */
    public void setUserPersistence(UserPersistence userPersistence) {
        this.userPersistence = userPersistence;
    }

    public void afterPropertiesSet() {
    }

    public void destroy() {
    }

    /**
     * Returns the Spring bean ID for this bean.
     *
     * @return the Spring bean ID for this bean
     */
    public String getBeanIdentifier() {
        return _beanIdentifier;
    }

    /**
     * Sets the Spring bean ID for this bean.
     *
     * @param beanIdentifier the Spring bean ID for this bean
     */
    public void setBeanIdentifier(String beanIdentifier) {
        _beanIdentifier = beanIdentifier;
    }

    public Object invokeMethod(String name, String[] parameterTypes,
        Object[] arguments) throws Throwable {
        return _clpInvoker.invokeMethod(name, parameterTypes, arguments);
    }

    /**
     * Performs an SQL query.
     *
     * @param sql the sql query
     */
    protected void runSQL(String sql) throws SystemException {
        try {
            DataSource dataSource = InfrastructureUtil.getDataSource();

            SqlUpdate sqlUpdate = SqlUpdateFactoryUtil.getSqlUpdate(dataSource,
                    sql, new int[0]);

            sqlUpdate.update();
        } catch (Exception e) {
            throw new SystemException(e);
        }
    }
}
